package com.dms.modules.product.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

@Data
@ApiModel("商品搜索DTO")
public class ProductSearchDTO {
    
    @ApiModelProperty("搜索关键词")
    private String keyword;
    
    @ApiModelProperty("分类ID")
    private Long categoryId;
    
    @ApiModelProperty("分类ID列表")
    private List<Long> categoryIds;
    
    @ApiModelProperty("商家ID")
    private Long merchantId;
    
    @ApiModelProperty("最低价格")
    private BigDecimal minPrice;
    
    @ApiModelProperty("最高价格")
    private BigDecimal maxPrice;
    
    @ApiModelProperty("最低销量")
    private Integer minSales;
    
    @ApiModelProperty("最高销量")
    private Integer maxSales;
    
    @ApiModelProperty("店铺ID")
    private Long shopId;
    
    @ApiModelProperty("商品标签")
    private List<String> tags;
    
    @ApiModelProperty("排序方式：price_asc-价格升序，price_desc-价格降序，create_time_desc-最新上架")
    private String orderBy;
    
    @ApiModelProperty("页码")
    private Integer pageNum = 1;
    
    @ApiModelProperty("每页数量")
    private Integer pageSize = 10;
    
    @ApiModelProperty("是否只查询特价商品")
    private Boolean onlySpecial = false;
    
    @ApiModelProperty("是否只查询有库存商品")
    private Integer hasStock = 1;
    
    @ApiModelProperty("用户ID")
    private Long userId;
} 